#define _CRT_SECURE_NO_WARNINGS
#include <iostream>
#include <vector>
#include <algorithm>
using namespace std;
//int triangleNumber(vector<int>& nums) {
//    sort(nums.begin(), nums.end());
//    int end = nums.size() - 1;
//    int count = 0;
//    for (int i = end; i > 1; i--)
//    {
//        int left = 0;
//        int right = i - 1;
//        while (left < right)
//        {
//            if (nums[left] + nums[right] > nums[i])
//            {
//                count += right - left;
//                right--;
//            }
//            else
//            {
//                left++;
//            }
//        }
//    }
//    return count;
//}
//int triangleNumber(vector<int>& nums) {
//    sort(nums.begin(), nums.end());
//    int end = nums.size() - 1;
//    int count = 0;
//    while (end > 1)
//    {
//        int right = end - 1;
//        int left = 0;
//
//        if (nums[right] + nums[left] > nums[end])
//        {
//            count += right - left+1;
//            end--;
//            //cout<<end<<" ";
//        }
//        else
//        {
//            left++;
//        }
//    }
//    return count;
//}
//
//int main()
//{
//    vector <int> n1{ 4,2,3,4 };
//    int a = triangleNumber(n1);
//    cout << a << endl;
//    return 0;
//}
//
//void PrintfArr(const int(&arr)[5])
//{
//	for (int num : arr)
//	{
//		cout << num << "\t";
//	}
//	cout << endl;
//}
//
//int main()
//{
//	int arr[5] = { 1,2,3,4 };
//	PrintfArr(arr);
//
//	return 0;
//}